Next: LaTeX xr Package, Previous: Reference Info, Up: Labels and References [Contents][Index]
In case you defined your own macros for referencing or you are
using LaTeX packages providing specialized macros to be used
instead of \ref, RefTeX provides ways to select and
insert them in a convenient way.
RefTeX comes equipped with a set of so-called reference styles where each relates to one or more reference macros. The standard macros ‘\ref’ and ‘\pageref’ or provided by the “Default” style. The “Varioref” style offers macros for the ‘varioref’ LaTeX package (‘\vref’, ‘\Vref’, ‘\Ref’, ‘\vpageref’), “Fancyref” for the ‘fancyref’ package (‘\fref’, ‘\Fref’) and “Hyperref” for the ‘hyperref’ package (‘\autoref’, ‘\autopageref’).
A style can be toggled by selecting the respective entry in
the ‘Reference Style’ menu. Changes made
through the menu will only last for the Emacs session. In order
to configure a preference permanently, the variable
reftex-ref-style-default-list should be customized.
This variable specifies the list of styles to be activated. It
can also be set as a file variable if the preference should be
set for a specific file.
In case the built-in styles do not suffice, you can add
additional macros and styles to the variable
reftex-ref-style-alist. Those do not necessarily
have to be related to a certain LaTeX package but can follow an
arbitrary grouping rule. For example you could define a style
called “Personal” for your personal referencing
macros. (When changing the variable you should be aware that
other Emacs packages, like AUCTeX, might rely on the entries from
the default value to be present.)
Once a style is active the macros it relates to are available for selection when you are about to insert a reference. In general this process involves three steps: the selection of a reference macro, a label type and a label. Reference macros can be chosen in the first and last step.
In the first step you will be presented with a list of macros
from which you can select one by typing a single key. If you
dislike having an extra step for reference macro selection, you
can disable it by customizing
reftex-ref-macro-prompt and relying only on the
selection facilities provided in the last step.
In the last step, i.e., the label selection, two key bindings are provided to set the reference macro. Type v in order to cycle forward through the list of available macros or V to cycle backward. The mode line of the selection buffer shows the macro currently selected.
In case you are not satisfied with the order of macros when
cycling through them you should adapt the order of entries in the
variable reftex-ref-style-alist to fit your
liking.
For each entry in reftex-ref-style-alist a
function with the name
reftex-<package>-<macro> (e.g.,
reftex-varioref-vref) will be created automatically
by RefTeX. These functions can be used instead of C-c
) and provide an alternative way of having your favorite
referencing macro preselected and if cycling through the macros
seems inconvenient to you.2
In former versions of RefTeX only support for
varioref and fancyref was included.
varioref is a LaTeX package to create
cross-references with page information. fancyref is
a package where a macro call like
\fref{fig:map-of-germany} creates not
only the number of the referenced counter but also the complete
text around it, like ‘Figure 3 on the preceding
page’. In order to make it work you need to use
label prefixes like ‘fig:’
consistently—something RefTeX does automatically. For each
of these packages a variable could be configured to make its
macros to take precedence over \ref. Those were
reftex-vref-is-default and
reftex-fref-is-default respectively. While still
working, these variables are deprecated now. Instead of setting
them, the variable reftex-ref-style-default-list
should be adapted now.
You could, e.g., bind reftex-varioref-vref to
C-c v and reftex-fancyref-fref to
C-c f.
Next: LaTeX xr Package, Previous: Reference Info, Up: Labels and References [Contents][Index]